### Finding gene modules that make cells susceptible to Zika infection
| title: “Finding gene modules that make cells susceptible to Zika infection” |
| tput: |
| html_document: default |
| thub_document: default |
| g_width: 12 |
| g_height: 4 |
Load the required R libraries:
library(Seurat)
library(Matrix)
library(EnsDb.Hsapiens.v75)
library(rhdf5)
library(dplyr)
Prior to this analysis we processed the raw sequencing data with cellranger/STAR aligner and ran an algorithm called CellBender on it to remove ambient RNA.
Here I 1.) load the data 2.) change the gene identifiers from ensemble ids to symbols 3.) construct a metadata matrix (with donor information, Zika exposure etc.) 4.) put the data and metadata into a Seurat object. 5.) load mitochondrial genes from a database for later use 6.) Remove doublets, by loading the doublet scores I got from an algorithm (called scrublet) I ran on the data before.
setwd('/home/jovyan/HB_ZIK/')
# glioblastoma_counts = read.delim('../data/ZikaGlioblastomas/tic-527/study5953-tic527-star-fc-genecounts.txt', row.names = 1)
# manifest = read.delim('../HB_ZIK/5953stdy_manifest_14517_170919_HB_ZIK_046_048_050_051.csv', sep = ',', skip = 8)
# manifest = manifest[manifest$SUPPLIER.SAMPLE.NAME != "",]
# scrublet_classification = read.delim('scrublet/SmartSeq_predicted_doublets.txt')
# glioblastoma_counts = glioblastoma_counts[,scrublet_classification != 1]
# glioblastoma_metadata = data.frame(matrix('', dim(glioblastoma_counts)[2],4))
# colnames(glioblastoma_metadata) = c('SampleName', 'Technology', 'ZikaExposure', 'Patient')
# glioblastoma_metadata[,1] = unlist(lapply(colnames(glioblastoma_counts), function(x) substring(x,2)))
# glioblastoma_metadata[,2] = rep('SmartSeq', dim(glioblastoma_counts)[2])
# glioblastoma_metadata[,3] = rep('TRUE', dim(glioblastoma_counts)[2])
# glioblastoma_metadata[,4] = substring(manifest$SUPPLIER.SAMPLE.NAME[match(glioblastoma_metadata$SampleName, manifest$SANGER.SAMPLE.ID)], 3, 4)
# patients = c('42','42','43', '43', '45', '45', '46', '46') # (info from sample tracker)
# geneNames = as.matrix(read.table(paste('../data/ZikaGlioblastomas/cellranger302_count_32771_5953STDY855119', as.character(1), '_GRCh38-3_0_0_premrna/filtered_feature_bc_matrix/filtered_feature_bc_matrix/features.tsv', sep = '')))
#
# geneOccurence = table(geneNames[,2])
# for (gene in names(geneOccurence)){
# if (geneOccurence[gene] > 1){
# geneNames[which(geneNames[,2] == gene),2] = paste(geneNames[which(geneNames[,2] == gene),2], '(', geneNames[which(geneNames[,2] == gene),1], ')', sep = '')
# }
# }
# rownames(glioblastoma_counts) = geneNames[match(rownames(glioblastoma_counts), geneNames[,1]),2]
# glioblastoma_counts = glioblastoma_counts[geneNames[,2],]
# for (i in 1:8){
# print(i)
# # prefiltered count_matrix:
# data_subset <- as.matrix(Read10X_h5(filename = paste('../data/HB_ZIK/HB_ZIK/cellranger302_count_32771_5953STDY855119', as.character(i), '_GRCh38-3_0_0_premrna/output_filtered.h5', sep = ''), use.names = TRUE))
# scrublet_classification = read.delim(paste('scrublet/5953STDY855119', as.character(i), '_predicted_doublets.txt', sep = ''))
# print('removed doublets:')
# print(sum(scrublet_classification))
# data_subset = data_subset[,scrublet_classification != 1]
# sampleNames = rownames(data_subset)
# glioblastoma_counts = cbind(glioblastoma_counts, data_subset)
# metadata_subset = data.frame(matrix('', dim(data_subset)[2],4))
# colnames(metadata_subset) = c('SampleName', 'Technology', 'ZikaExposure', 'Patient')
# metadata_subset[,1] = colnames(data_subset)
# metadata_subset[,2] = rep('10X', dim(data_subset)[2])
# metadata_subset[,3] = rep('FALSE', dim(data_subset)[2])
# metadata_subset[,4] = rep(patients[i], dim(data_subset)[2])
# glioblastoma_metadata = rbind(glioblastoma_metadata, metadata_subset)
# }
# mitogenes <- genes(EnsDb.Hsapiens.v75, filter = ~ seq_name == "MT")$gene_id
# mitogenes = geneNames[,2][match(mitogenes, geneNames[,1])]
# mitogenes = mitogenes[!is.na(mitogenes)]
# percent.mt = colSums(glioblastoma_counts[rownames(glioblastoma_counts) %in% mitogenes,])/colSums(glioblastoma_counts)
# Glioblastoma <- CreateSeuratObject(glioblastoma_counts, project = 'HB_ZIK', min.cells = 0, min.features = 0)
# Glioblastoma$SampleName = colnames(glioblastoma_counts)
# Glioblastoma$Technology = glioblastoma_metadata$Technology
# Glioblastoma$ZikaExposure = glioblastoma_metadata$ZikaExposure
# Glioblastoma$Patient = glioblastoma_metadata$Patient
# Glioblastoma$percent.mt = percent.mt
# saveRDS(Glioblastoma, file = "../data/ZikaGlioblastomas/zikaGlioblastomas_SeuratObject.rds")
Glioblastoma = readRDS("../data/ZikaGlioblastomas/zikaGlioblastomas_SeuratObject.rds")
The QC plots using number of detected genes, number of counts and percent of counts coming from mitochondrial genes (as a proxy for stress), show a couple of outlier cells, which I remove:
Glioblastoma.list <- SplitObject(Glioblastoma, split.by = 'Technology')
i = 1
VlnPlot(Glioblastoma.list[[i]], features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3, group.by = 'Patient')
plot1 <- FeatureScatter(Glioblastoma.list[[i]], feature1 = "nCount_RNA", feature2 = "percent.mt")
plot2 <- FeatureScatter(Glioblastoma.list[[i]], feature1 = "nCount_RNA", feature2 = "nFeature_RNA")
CombinePlots(plots = list(plot1, plot2))
Glioblastoma.list[[i]] <- subset(Glioblastoma.list[[i]], subset = nFeature_RNA > 2500 & nFeature_RNA < 12000 & nCount_RNA < 2*10^6 & percent.mt < 0.1)
VlnPlot(Glioblastoma.list[[i]], features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3, group.by = 'Patient')
i = 2
VlnPlot(Glioblastoma.list[[i]], features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3, group.by = 'Patient')
plot1 <- FeatureScatter(Glioblastoma.list[[i]], feature1 = "nCount_RNA", feature2 = "percent.mt")
plot2 <- FeatureScatter(Glioblastoma.list[[i]], feature1 = "nCount_RNA", feature2 = "nFeature_RNA")
CombinePlots(plots = list(plot1, plot2))
Glioblastoma.list[[i]] <- subset(Glioblastoma.list[[i]], subset = nFeature_RNA > 500 & nFeature_RNA < 5000 & nCount_RNA > 0 & nCount_RNA < 4*10^5 & percent.mt < 0.1)
VlnPlot(Glioblastoma.list[[i]], features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3, group.by = 'Patient')
The following normalizes, scales and select 2000 particularly variable genes.
for (i in 1:2){
Glioblastoma.list[[i]] <- NormalizeData(Glioblastoma.list[[i]], normalization.method = "LogNormalize", scale.factor = 10000)
Glioblastoma.list[[i]] <- FindVariableFeatures(Glioblastoma.list[[i]], selection.method = "vst", nfeatures = 2000)
top25 <- head(VariableFeatures(Glioblastoma.list[[i]]), 25)
plot1 <- VariableFeaturePlot(Glioblastoma.list[[i]])
plot2 <- LabelPoints(plot = plot1, points = top25, repel = TRUE)
CombinePlots(plots = list(plot1, plot2))
all.genes <- rownames(Glioblastoma.list[[i]])
Glioblastoma.list[[i]] <- ScaleData(Glioblastoma.list[[i]], features = all.genes)
}
These are the results of the PCA analysis:
for (i in 1:2){
Glioblastoma.list[[i]] <- RunPCA(Glioblastoma.list[[i]], features = VariableFeatures(object = Glioblastoma.list[[i]]))
print(Glioblastoma.list[[i]][["pca"]], dims = 1:5, nfeatures = 5)
VizDimLoadings(Glioblastoma.list[[i]], dims = 1:2, reduction = "pca")
DimPlot(Glioblastoma.list[[i]], reduction = "pca")
DimHeatmap(Glioblastoma.list[[i]], dims = 1, cells = round(dim(Glioblastoma.list[[i]])[2])/2, balanced = TRUE)
DimHeatmap(Glioblastoma.list[[i]], dims = 1:15, cells = round(dim(Glioblastoma.list[[i]])[2])/2, balanced = TRUE)
}
## PC_ 1
## Positive: FCER1G, TYROBP, CD74, SRGN, C1QC, LAPTM5, APOE, CTSB, GPNMB, AIF1
## C1QB, CD14, ITGB2, CTSS, HLA-DRA, CREG1, C1QA, PLXDC2, HLA-DRB1, FYB1
## APOC1, MS4A6A, TMEM176B, PTPRC, SAMSN1, PILRA, CTSL, HLA-DPA1, MSR1, S100A4
## Negative: MLLT3, LRP1B, LRRC4C, VXN, BACH2, KCNQ5, COPG2, DMD, CHN1, CADM2
## PDP1, ERBB4, GORAB, TENT5A, VIPR2, ZC3HAV1, ARL4A, ACSL3, FAM200A, OASL
## GPC6, PMAIP1, AC092691.1, HAS2, AC092958.1, THUMPD3-AS1, ZNF704, DLGAP1, CFAP54, HERC5
## PC_ 2
## Positive: ZC3HAV1, IFI44, HERC5, VIPR2, OASL, IFIH1, AC015849.1, CFAP54, GCA, TNFAIP2
## AL357060.1, AC118553.2, AL356414.1, ART3, PDZD2, NFKBIZ, DHX58, PPM1K, IFNB1, DMD
## CDC14A, RSAD2, GBP4, EPHA4, PLD5, JAZF1-AS1, COPG2, THUMPD3-AS1, BACH2, BIRC3
## Negative: CKS1B, BIRC5, NUF2, TOP2A, PBK, MAD2L1, PIMREG, CENPF, SPC25, AURKB
## NUSAP1, CDC20, TPX2, UBE2C, SHCBP1, DLGAP5, CDKN3, HJURP, UBE2T, CKAP2L
## CDCA3, KIF23, TTK, NDC80, AURKA, PTTG1, BUB1B, KIF4A, CKAP2, KIF2C
## PC_ 3
## Positive: IGFBP7, SPARC, C1R, C1S, FN1, CLU, DLC1, CA12, F3, COL1A1
## CHI3L1, PTGFRN, KDELR3, COL6A2, DKK3, CTSO, CDH11, PLA2G5, PKIG, NOTCH3
## SELENOM, COL5A1, EGFR, PXDN, DCN, COL4A1, S100A16, RAMP1, SERPINE2, CA2
## Negative: UBE2C, NUSAP1, NUF2, TOP2A, ASPM, NDC80, SGO1, TTK, ESCO2, BIRC5
## PBK, CDCA8, TPX2, CCNB2, AURKB, CKS2, NCAPG, KIF23, BUB1, CDC20
## CCNB1, DLGAP5, HJURP, NEK2, SKA1, PCDH11X, SKA3, CKAP2L, KIF20B, KIF2C
## PC_ 4
## Positive: ANKS1B, KIF5A, SLC24A2, ZNF536, PEX5L, MAG, BCAS1, AKAP6, SLAIN1, UGT8
## NRXN3, ELDR, IL1RAPL1, PLP1, CNDP1, KLK6, FOLH1, AC004448.2, DCTN2, SPOCK3
## SYT1, ENPP2, PIP4K2C, TF, CDH19, CNTNAP4, GJB1, SYT14, MOG, RPS2
## Negative: TNFAIP6, TNFAIP2, GBP1, PMAIP1, BST2, HS3ST3B1, CHI3L1, CCL2, CHEK2, CD70
## GBP3, CPNE8, SAT1, SDC4, IGFBP3, VCAM1, FN1, CXCL8, PHLDA2, WARS
## BIRC3, HLA-E, GBP2, MT2A, IFIH1, FAS, IGFBP6, CXCL3, AXL, TNFAIP8
## PC_ 5
## Positive: EGFR, TENM3, SOCS2, PTPRZ1, RNF180, DDIT3, NAMPT, MEG3, PDPN, C2orf80
## FABP7, RAMP1, MOXD1, MARS, ELDR, CLU, TNC, PLK2, PSRC1, KIF5A
## DTX3, C1orf61, ROBO2, RGS6, TSHZ2, CADPS, METTL1, TSFM, SDC4, AGT
## Negative: MYO1B, COL3A1, NDUFA4L2, LUM, DCN, COL1A2, EDNRA, PLAC9, BGN, COL1A1
## PDGFRB, RGS5(ENSG00000143248), PLXDC1, ITGA1, COL15A1, IGFBP4, FAM162B, CAVIN3, PRKG1, NOTCH3
## UACA, ADGRF5, GNG11, EDIL3, COL6A3, PRR16, LAMC3, TPM2, COL5A1, ENPEP
## PC_ 1
## Positive: FCER1G, TYROBP, CD74, SRGN, C1QC
## Negative: MLLT3, LRP1B, LRRC4C, VXN, BACH2
## PC_ 2
## Positive: ZC3HAV1, IFI44, HERC5, VIPR2, OASL
## Negative: CKS1B, BIRC5, NUF2, TOP2A, PBK
## PC_ 3
## Positive: IGFBP7, SPARC, C1R, C1S, FN1
## Negative: UBE2C, NUSAP1, NUF2, TOP2A, ASPM
## PC_ 4
## Positive: ANKS1B, KIF5A, SLC24A2, ZNF536, PEX5L
## Negative: TNFAIP6, TNFAIP2, GBP1, PMAIP1, BST2
## PC_ 5
## Positive: EGFR, TENM3, SOCS2, PTPRZ1, RNF180
## Negative: MYO1B, COL3A1, NDUFA4L2, LUM, DCN
## PC_ 1
## Positive: SLC1A3, RNF220, CPM, SPP1, ST6GALNAC3, ST18, PDK4, TMEM144, RBM47, PLP1
## SLC11A1, NHSL1, TBXAS1, SLC9A9, ACSL1, CDK18, FYB1, SRGN, SLCO2B1, DOCK8
## MSR1, MOBP, APBB1IP, BNC2, BCAS1, FGFR2, CD74, SLC5A11, MERTK, AC074327.1
## Negative: DLGAP2, SYN2, CACNA1B, GALNT17, GRIN2A, SYN3, LINGO2, CNTN4, GABRG3, GABBR2
## LRFN5, GRIN2B, MYT1L, HS6ST3, CCSER1, GABRG2, RIMBP2, CACNA1C, CELF4, KHDRBS2
## RYR2, SYT1, AGBL4, RALYL, GABRB3, FRMPD4, GALNTL6, NETO1, PRR16, KCTD16
## PC_ 2
## Positive: PLXDC2, SPP1, ST6GALNAC3, SLCO2B1, PDK4, SRGN, ACSL1, PRKAG2, MAN1A1, TBXAS1
## APBB1IP, SLC11A1, MSR1, DOCK8, FYB1, AC074327.1, ARHGAP15, CD74, MERTK, FMN1
## SYNJ2, RAPGEF5, RBM47, BNC2, CTSB, EPB41L3, LRMDA, CD163, SAT1, CPM
## Negative: SOX6, NXPH1, PCDH15, LRRC4C, KCND2, MMP16, BRINP3, GRIK2, NKAIN3, SCN1A
## ETV1, SEMA6D, LUZP2, KAZN, THSD7A, AC004852.2, CA10, XKR4, DLGAP1, VCAN
## FGF14, AC092691.1, ERBB4, CNTN1, DGKG, GPC6, FGF12, SLC24A3, GLCCI1, IGF2BP3
## PC_ 3
## Positive: SPOCK3, CNTNAP4, PEX5L, ST18, PCSK6, KIRREL3, ANK3, RNF220, TMEM144, PTPRD
## PLP1, BCAS1, MOBP, SLC5A11, CDK18, ANKS1B, CNDP1, DLC1, FGFR2, DLG2
## HS3ST5, ANO4, NRXN3, SYNJ2, LINC01170, AC026316.5, RAPGEF5, GALNT13, KCTD8, ST6GALNAC3
## Negative: MT-CO1, ITPR2, MT-CO3, CELF2, SAT1, LRMDA, MT-CYB, NAMPT, MT-ATP6, SLC4A4
## RBM47, MT-ND4, RUNX1, SLC1A3, MT-CO2, NHSL1, SERPINE1, APOE, MERTK, MT-ND1
## MT-ND3, VEGFA, RGS6, PTCHD1-AS, SLC11A1, SRGN, MT2A, BNC2, GLIS3, MT-ND2
## PC_ 4
## Positive: RGS6, SLC4A4, SHROOM3, VEGFA, CCT6A, NIPSNAP2, SUMF2, PTCHD1-AS, PHKG1, IGF1R
## MT2A, WWTR1, SEC61G, CHI3L1, ACSS3, PDZD2, LONRF2, LHFPL6, PSPH, ALDH1L1
## RGS20, TNC, SYNJ2, ARHGEF26, IGFBP5, GPC5, LAMA2, YAP1, ACSBG1, AKAP12
## Negative: FRMD4A, SRGN, KCNQ3, APBB1IP, SLCO2B1, FMN1, SLC11A1, AC074327.1, FYB1, TBXAS1
## MSR1, ARHGAP15, DOCK8, ST6GAL1, CD74, ACSL1, MERTK, MEF2C, TMEM163, LRMDA
## PLXDC2, CTSB, BNC2, TNS3, CD163, RBM47, OLR1, SAMSN1, SAT1, SPP1
## PC_ 5
## Positive: CA10, MMP16, MEGF11, TNR, AC004852.2, DGKB, DSCAM, PCDH15, XYLT1, IGF2BP3
## ETV1, BRINP3, GALNT13, GLCCI1, CSMD1, NXPH1, ADAMTSL1, VCAN, NTN1, BCAN
## EYA1, KHDRBS3, DLGAP1, ZFPM2, CSMD3, GRIA4, PCDH11X, AC016205.1, FGF12, TNS3
## Negative: GRIP1, SYNPR, SNRPN, GAD2, BTBD11, MGAT4C, ADAMTS9-AS2, MYRIP, ZMAT4, GRIA1
## FSTL5, SLC35F4, GRIN3A, LGI1, ADARB2, ZNF385D, ZNF385B, CCDC85A, ABLIM1, C8orf34
## PTPRM, HTR2C, RERG, MAST4, KCNAB1, MTUS2, INPP4B, TRPM3, NYAP2, HPSE2
## PC_ 1
## Positive: SLC1A3, RNF220, CPM, SPP1, ST6GALNAC3
## Negative: DLGAP2, SYN2, CACNA1B, GALNT17, GRIN2A
## PC_ 2
## Positive: PLXDC2, SPP1, ST6GALNAC3, SLCO2B1, PDK4
## Negative: SOX6, NXPH1, PCDH15, LRRC4C, KCND2
## PC_ 3
## Positive: SPOCK3, CNTNAP4, PEX5L, ST18, PCSK6
## Negative: MT-CO1, ITPR2, MT-CO3, CELF2, SAT1
## PC_ 4
## Positive: RGS6, SLC4A4, SHROOM3, VEGFA, CCT6A
## Negative: FRMD4A, SRGN, KCNQ3, APBB1IP, SLCO2B1
## PC_ 5
## Positive: CA10, MMP16, MEGF11, TNR, AC004852.2
## Negative: GRIP1, SYNPR, SNRPN, GAD2, BTBD11
Based on the JackStraw procedure I select 14 PCs for further analysis in both cases:
# for (i in 1:2){
# Glioblastoma.list[[i]] <- JackStraw(Glioblastoma.list[[i]], num.replicate = 100)
# Glioblastoma.list[[i]] <- ScoreJackStraw(Glioblastoma.list[[i]], dims = 1:20)
# JackStrawPlot(Glioblastoma.list[[i]], dims = 1:20)
# ElbowPlot(Glioblastoma.list[[i]], ndims = 40)
# }
This is the clustering step:
n_dimensions = 14
for (i in 1:2){
Glioblastoma.list[[i]] <- FindNeighbors(Glioblastoma.list[[i]], dims = 1:n_dimensions)
Glioblastoma.list[[i]] <- FindClusters(Glioblastoma.list[[i]], resolution = 0.5)
head(Idents(Glioblastoma.list[[i]]), 5)
}
## Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
##
## Number of nodes: 1160
## Number of edges: 32887
##
## Running Louvain algorithm...
## Maximum modularity in 10 random starts: 0.9083
## Number of communities: 12
## Elapsed time: 0 seconds
## Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
##
## Number of nodes: 31748
## Number of edges: 1080302
##
## Running Louvain algorithm...
## Maximum modularity in 10 random starts: 0.9440
## Number of communities: 23
## Elapsed time: 7 seconds
Clusters roughly agree with visual seperation on a UMAP plot:
for (i in 1:2){
Glioblastoma.list[[i]] <- RunUMAP(Glioblastoma.list[[i]], dims = 1:n_dimensions)
print(DimPlot(Glioblastoma.list[[i]], reduction = "umap"))
#saveRDS(axonGrowth, file = "axonGrowth_SeuratTutorial.rds")
}
Visualize markers and annotate clusters:
i = 1
#Glioblastoma.0.markers <- FindAllMarkers(Glioblastoma.list[[i]], only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)
#saveRDS(Glioblastoma.0.markers, file = "../data/ZikaGlioblastomas/Glioblastoma.0.markers.rds")
Glioblastoma.0.markers = readRDS("../data/ZikaGlioblastomas/Glioblastoma.0.markers.rds")
top = Glioblastoma.0.markers %>% group_by(cluster) %>% top_n(n = 1, wt = avg_logFC)
FeaturePlot(Glioblastoma.list[[i]], features = top$gene)
top10 <- Glioblastoma.0.markers %>% group_by(cluster) %>% top_n(n = 10, wt = avg_logFC)
DoHeatmap(Glioblastoma.list[[i]], features = top10$gene, cells = 1:dim(Glioblastoma.list[[i]])[2] + NoLegend())
as.matrix(top10)
## p_val avg_logFC pct.1 pct.2 p_val_adj cluster
## [1,] "2.798759e-128" "2.522756" "0.989" "0.223" "9.386477e-124" "0"
## [2,] "3.527754e-128" "2.129951" "0.983" "0.205" "1.183138e-123" "0"
## [3,] "2.478211e-124" "2.329936" "0.989" "0.225" "8.311422e-120" "0"
## [4,] "1.318814e-118" "2.133787" "0.994" "0.250" "4.423038e-114" "0"
## [5,] "3.134785e-115" "2.228971" "1.000" "0.291" "1.051344e-110" "0"
## [6,] "1.355377e-114" "2.567080" "0.989" "0.282" "4.545664e-110" "0"
## [7,] "5.912241e-114" "2.169436" "1.000" "0.295" "1.982847e-109" "0"
## [8,] "8.787250e-112" "2.700498" "1.000" "0.311" "2.947068e-107" "0"
## [9,] "2.518811e-111" "2.143144" "0.994" "0.262" "8.447589e-107" "0"
## [10,] "3.723965e-104" "2.103426" "1.000" "0.395" " 1.248943e-99" "0"
## [11,] " 5.390725e-81" "2.038185" "0.953" "0.331" " 1.807941e-76" "1"
## [12,] " 3.096750e-73" "1.818058" "0.935" "0.381" " 1.038588e-68" "1"
## [13,] " 2.787820e-66" "1.946037" "1.000" "0.759" " 9.349790e-62" "1"
## [14,] " 3.809341e-66" "1.423535" "0.923" "0.395" " 1.277577e-61" "1"
## [15,] " 3.939624e-62" "1.408315" "0.994" "0.745" " 1.321271e-57" "1"
## [16,] " 2.026466e-57" "1.497978" "0.905" "0.420" " 6.796361e-53" "1"
## [17,] " 6.328998e-57" "1.633480" "0.970" "0.755" " 2.122619e-52" "1"
## [18,] " 1.866497e-56" "1.511335" "0.988" "0.830" " 6.259857e-52" "1"
## [19,] " 4.110477e-53" "1.550033" "0.923" "0.597" " 1.378572e-48" "1"
## [20,] " 1.494263e-51" "1.516664" "0.982" "0.624" " 5.011461e-47" "1"
## [21,] " 7.497445e-78" "1.826130" "0.721" "0.121" " 2.514493e-73" "2"
## [22,] " 1.846264e-74" "2.391872" "0.994" "0.897" " 6.192000e-70" "2"
## [23,] " 5.179022e-72" "1.623937" "0.864" "0.240" " 1.736940e-67" "2"
## [24,] " 2.527806e-60" "1.413136" "0.974" "0.812" " 8.477756e-56" "2"
## [25,] " 5.903210e-60" "1.469367" "0.935" "0.507" " 1.979819e-55" "2"
## [26,] " 5.530687e-59" "1.790494" "1.000" "0.927" " 1.854882e-54" "2"
## [27,] " 3.788774e-57" "1.937084" "0.981" "0.700" " 1.270679e-52" "2"
## [28,] " 1.882958e-56" "1.495411" "1.000" "0.996" " 6.315065e-52" "2"
## [29,] " 2.766177e-51" "1.440902" "0.714" "0.177" " 9.277206e-47" "2"
## [30,] " 1.948553e-47" "1.448895" "0.948" "0.670" " 6.535057e-43" "2"
## [31,] "2.696909e-170" "1.536410" "0.930" "0.051" "9.044894e-166" "3"
## [32,] " 1.813295e-97" "1.715417" "0.937" "0.228" " 6.081429e-93" "3"
## [33,] " 8.325655e-88" "1.961581" "0.965" "0.282" " 2.792258e-83" "3"
## [34,] " 2.807664e-79" "1.836803" "0.986" "0.546" " 9.416344e-75" "3"
## [35,] " 4.265136e-76" "1.904044" "0.986" "0.601" " 1.430441e-71" "3"
## [36,] " 4.129375e-75" "1.849851" "0.993" "0.638" " 1.384910e-70" "3"
## [37,] " 9.078462e-75" "2.576137" "0.986" "0.773" " 3.044735e-70" "3"
## [38,] " 9.823225e-75" "2.063922" "0.986" "0.614" " 3.294513e-70" "3"
## [39,] " 6.953299e-73" "1.886080" "0.972" "0.537" " 2.331997e-68" "3"
## [40,] " 2.234984e-68" "2.417912" "0.986" "0.758" " 7.495690e-64" "3"
## [41,] " 1.167120e-54" "2.252501" "0.790" "0.206" " 3.914288e-50" "4"
## [42,] " 4.401099e-52" "1.387220" "0.975" "0.512" " 1.476040e-47" "4"
## [43,] " 2.148337e-45" "1.450118" "0.840" "0.307" " 7.205092e-41" "4"
## [44,] " 2.076797e-42" "2.257484" "0.933" "0.476" " 6.965162e-38" "4"
## [45,] " 1.702096e-41" "1.615830" "0.874" "0.416" " 5.708489e-37" "4"
## [46,] " 2.759173e-41" "1.452258" "0.916" "0.527" " 9.253714e-37" "4"
## [47,] " 1.176994e-39" "1.446625" "0.975" "0.628" " 3.947404e-35" "4"
## [48,] " 2.298906e-34" "1.633594" "1.000" "0.975" " 7.710072e-30" "4"
## [49,] " 2.241069e-21" "1.797888" "0.773" "0.444" " 7.516096e-17" "4"
## [50,] " 1.221268e-18" "1.444292" "0.672" "0.342" " 4.095887e-14" "4"
## [51,] " 7.918077e-48" "1.622165" "0.990" "0.431" " 2.655565e-43" "5"
## [52,] " 2.238636e-46" "1.696176" "1.000" "0.722" " 7.507939e-42" "5"
## [53,] " 2.860564e-43" "1.459257" "0.929" "0.404" " 9.593760e-39" "5"
## [54,] " 4.813143e-41" "1.435189" "0.848" "0.277" " 1.614232e-36" "5"
## [55,] " 3.354506e-40" "1.458001" "0.909" "0.391" " 1.125034e-35" "5"
## [56,] " 5.105091e-40" "1.447743" "1.000" "0.790" " 1.712145e-35" "5"
## [57,] " 1.080295e-23" "1.418654" "0.899" "0.719" " 3.623092e-19" "5"
## [58,] " 1.197681e-20" "1.753500" "1.000" "0.996" " 4.016783e-16" "5"
## [59,] " 1.312912e-11" "1.967047" "0.980" "0.955" " 4.403245e-07" "5"
## [60,] " 1.819123e-06" "1.646971" "0.545" "0.420" " 6.100973e-02" "5"
## [61,] " 1.947917e-52" "1.186712" "0.922" "0.288" " 6.532923e-48" "6"
## [62,] " 2.604675e-46" "1.484916" "0.956" "0.408" " 8.735558e-42" "6"
## [63,] " 5.102311e-43" "1.315888" "0.933" "0.437" " 1.711213e-38" "6"
## [64,] " 1.494108e-42" "1.580178" "0.833" "0.266" " 5.010940e-38" "6"
## [65,] " 1.421163e-39" "1.139706" "0.889" "0.391" " 4.766297e-35" "6"
## [66,] " 7.483431e-39" "1.488748" "0.800" "0.228" " 2.509793e-34" "6"
## [67,] " 3.977564e-38" "1.387418" "0.989" "0.712" " 1.333995e-33" "6"
## [68,] " 1.357131e-32" "1.878086" "1.000" "0.931" " 4.551547e-28" "6"
## [69,] " 1.628702e-28" "1.268166" "0.900" "0.584" " 5.462342e-24" "6"
## [70,] " 3.900800e-26" "1.294382" "0.956" "0.689" " 1.308250e-21" "6"
## [71,] " 8.572137e-90" "1.768726" "1.000" "0.130" " 2.874923e-85" "7"
## [72,] " 1.368958e-87" "2.042924" "0.985" "0.129" " 4.591212e-83" "7"
## [73,] " 5.452865e-87" "2.236550" "0.985" "0.129" " 1.828782e-82" "7"
## [74,] " 3.346281e-64" "1.856521" "0.985" "0.221" " 1.122276e-59" "7"
## [75,] " 6.084572e-58" "1.687365" "0.970" "0.235" " 2.040644e-53" "7"
## [76,] " 9.481351e-58" "2.451641" "1.000" "0.285" " 3.179856e-53" "7"
## [77,] " 4.857875e-55" "2.280891" "0.924" "0.205" " 1.629234e-50" "7"
## [78,] " 2.406805e-41" "1.880665" "1.000" "0.538" " 8.071942e-37" "7"
## [79,] " 4.244582e-41" "1.753201" "1.000" "0.505" " 1.423548e-36" "7"
## [80,] " 4.642748e-36" "1.927642" "1.000" "0.633" " 1.557085e-31" "7"
## [81,] " 1.119942e-30" "1.613989" "0.723" "0.184" " 3.756061e-26" "8"
## [82,] " 2.331677e-29" "1.476633" "0.985" "0.648" " 7.819977e-25" "8"
## [83,] " 3.164093e-29" "1.066209" "0.954" "0.427" " 1.061174e-24" "8"
## [84,] " 4.007181e-29" "1.297525" "0.985" "0.649" " 1.343928e-24" "8"
## [85,] " 1.213273e-28" "1.408490" "0.985" "0.666" " 4.069074e-24" "8"
## [86,] " 1.192655e-25" "1.062717" "1.000" "0.855" " 3.999926e-21" "8"
## [87,] " 3.896175e-25" "1.414331" "1.000" "0.788" " 1.306699e-20" "8"
## [88,] " 8.366594e-24" "1.160669" "1.000" "0.912" " 2.805988e-19" "8"
## [89,] " 2.247137e-22" "1.263117" "0.846" "0.299" " 7.536448e-18" "8"
## [90,] " 2.352472e-17" "1.046039" "0.954" "0.643" " 7.889721e-13" "8"
## [91,] " 1.735046e-63" "3.263369" "0.917" "0.118" " 5.818996e-59" "9"
## [92,] " 2.762613e-55" "2.569412" "0.979" "0.189" " 9.265251e-51" "9"
## [93,] " 6.419675e-44" "2.227550" "0.771" "0.120" " 2.153031e-39" "9"
## [94,] " 6.937651e-42" "2.623658" "0.958" "0.267" " 2.326749e-37" "9"
## [95,] " 2.289617e-38" "2.592318" "0.938" "0.279" " 7.678916e-34" "9"
## [96,] " 8.660222e-32" "3.175171" "1.000" "0.752" " 2.904465e-27" "9"
## [97,] " 6.690497e-26" "2.182278" "1.000" "0.664" " 2.243859e-21" "9"
## [98,] " 2.150475e-19" "2.240637" "0.875" "0.457" " 7.212262e-15" "9"
## [99,] " 3.674938e-19" "2.320411" "0.958" "0.618" " 1.232501e-14" "9"
## [100,] " 7.397930e-19" "2.200289" "0.958" "0.921" " 2.481118e-14" "9"
## [101,] "1.551403e-165" "2.860848" "1.000" "0.009" "5.203095e-161" "10"
## [102,] " 9.468058e-83" "3.255233" "1.000" "0.035" " 3.175397e-78" "10"
## [103,] " 1.487256e-55" "3.158075" "1.000" "0.063" " 4.987960e-51" "10"
## [104,] " 5.362388e-38" "3.206616" "1.000" "0.107" " 1.798438e-33" "10"
## [105,] " 1.073640e-34" "2.909807" "0.833" "0.074" " 3.600772e-30" "10"
## [106,] " 3.716395e-31" "2.749332" "0.667" "0.049" " 1.246404e-26" "10"
## [107,] " 3.859706e-17" "2.549649" "1.000" "0.351" " 1.294468e-12" "10"
## [108,] " 1.293738e-16" "2.597582" "1.000" "0.334" " 4.338939e-12" "10"
## [109,] " 1.510370e-14" "3.835891" "1.000" "0.520" " 5.065478e-10" "10"
## [110,] " 2.953189e-13" "2.547447" "1.000" "0.646" " 9.904404e-09" "10"
## [111,] "3.528310e-157" "2.182565" "0.923" "0.005" "1.183325e-152" "11"
## [112,] "1.124497e-149" "1.528145" "0.923" "0.006" "3.771338e-145" "11"
## [113,] "1.194096e-132" "2.276899" "0.846" "0.006" "4.004759e-128" "11"
## [114,] " 4.843226e-88" "1.969147" "1.000" "0.023" " 1.624321e-83" "11"
## [115,] " 6.342572e-46" "1.954123" "1.000" "0.056" " 2.127172e-41" "11"
## [116,] " 1.077809e-24" "1.833355" "1.000" "0.130" " 3.614755e-20" "11"
## [117,] " 1.717758e-15" "1.884843" "0.846" "0.127" " 5.761015e-11" "11"
## [118,] " 7.243264e-12" "1.603618" "1.000" "0.341" " 2.429246e-07" "11"
## [119,] " 5.239166e-11" "1.499413" "0.615" "0.104" " 1.757112e-06" "11"
## [120,] " 8.042425e-10" "1.536496" "0.923" "0.298" " 2.697268e-05" "11"
## gene
## [1,] "C1QC"
## [2,] "C1QA"
## [3,] "C1QB"
## [4,] "HLA-DRB1"
## [5,] "FCER1G"
## [6,] "CD14"
## [7,] "SRGN"
## [8,] "CD74"
## [9,] "HLA-DRA"
## [10,] "LAPTM5"
## [11,] "PMAIP1"
## [12,] "TNFAIP6"
## [13,] "LRP1B"
## [14,] "BIRC3"
## [15,] "NAV2"
## [16,] "PLK2"
## [17,] "TTC28"
## [18,] "ACSL3"
## [19,] "PPP1R15A"
## [20,] "EGFR"
## [21,] "HIST1H4E"
## [22,] "CNTNAP2"
## [23,] "HIST1H4H"
## [24,] "PCDH11X"
## [25,] "ADAMTSL1"
## [26,] "DLGAP1"
## [27,] "KCNQ5"
## [28,] "DMD"
## [29,] "IFNB1"
## [30,] "COPG2"
## [31,] "ELDR"
## [32,] "DTX3"
## [33,] "CADPS"
## [34,] "KIF5A"
## [35,] "AC084033.3"
## [36,] "CDK4"
## [37,] "MARS"
## [38,] "DCTN2"
## [39,] "TSPAN31"
## [40,] "DDIT3"
## [41,] "IGFBP3"
## [42,] "MSMO1"
## [43,] "HOPX"
## [44,] "CHI3L1"
## [45,] "ATP1B2"
## [46,] "GATM"
## [47,] "RCAN1"
## [48,] "PTPRZ1"
## [49,] "SERPINE1"
## [50,] "AGT"
## [51,] "PLXDC2"
## [52,] "LRMDA"
## [53,] "FMN1"
## [54,] "AC074327.1"
## [55,] "EPB41L3"
## [56,] "DOCK4"
## [57,] "DAPK1"
## [58,] "SCHLAP1"
## [59,] "ASCC2"
## [60,] "GFRA2"
## [61,] "NTNG1"
## [62,] "ID1"
## [63,] "GPC5"
## [64,] "FAM155A"
## [65,] "MGST1"
## [66,] "METTL7B"
## [67,] "CTNNA2"
## [68,] "SEC61G"
## [69,] "S100A16"
## [70,] "ANXA1"
## [71,] "BIRC5"
## [72,] "UBE2C"
## [73,] "TOP2A"
## [74,] "TPX2"
## [75,] "CENPF"
## [76,] "NUSAP1"
## [77,] "CCNB1"
## [78,] "PTTG1"
## [79,] "CKS2"
## [80,] "KPNA2"
## [81,] "CTGF"
## [82,] "ACAT2"
## [83,] "NTRK2"
## [84,] "FDFT1"
## [85,] "DGKB"
## [86,] "GAP43"
## [87,] "PTN"
## [88,] "TUBA1A"
## [89,] "GAL"
## [90,] "FABP7"
## [91,] "PLP1"
## [92,] "BCAS1"
## [93,] "TF"
## [94,] "SLAIN1"
## [95,] "CYB5R2"
## [96,] "AKAP6"
## [97,] "CRYAB"
## [98,] "CA2"
## [99,] "S100B"
## [100,] "GLUL"
## [101,] "COL3A1"
## [102,] "DCN"
## [103,] "NDUFA4L2"
## [104,] "COL1A2"
## [105,] "COL1A1"
## [106,] "STC1"
## [107,] "COL4A1"
## [108,] "FSTL1"
## [109,] "FN1"
## [110,] "SPARC"
## [111,] "CD2"
## [112,] "TRBC2"
## [113,] "GZMA"
## [114,] "CD52"
## [115,] "TRAC"
## [116,] "CD96"
## [117,] "CCL4"
## [118,] "PTPRC"
## [119,] "TC2N"
## [120,] "PCED1B"
i = 2
#Glioblastoma.1.markers <- FindAllMarkers(Glioblastoma.list[[i]], only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)
#saveRDS(Glioblastoma.1.markers, file = "../data/ZikaGlioblastomas/Glioblastoma.1.markers.rds")
Glioblastoma.1.markers = readRDS("../data/ZikaGlioblastomas/Glioblastoma.1.markers.rds")
top = Glioblastoma.1.markers %>% group_by(cluster) %>% top_n(n = 1, wt = avg_logFC)
FeaturePlot(Glioblastoma.list[[i]], features = top$gene)
top5 <- Glioblastoma.1.markers %>% group_by(cluster) %>% top_n(n = 5, wt = avg_logFC)
DoHeatmap(Glioblastoma.list[[i]], features = top5$gene, cells = sample(1:dim(Glioblastoma.list[[i]])[2], 1000))
as.matrix(top10)
## p_val avg_logFC pct.1 pct.2 p_val_adj cluster
## [1,] "2.798759e-128" "2.522756" "0.989" "0.223" "9.386477e-124" "0"
## [2,] "3.527754e-128" "2.129951" "0.983" "0.205" "1.183138e-123" "0"
## [3,] "2.478211e-124" "2.329936" "0.989" "0.225" "8.311422e-120" "0"
## [4,] "1.318814e-118" "2.133787" "0.994" "0.250" "4.423038e-114" "0"
## [5,] "3.134785e-115" "2.228971" "1.000" "0.291" "1.051344e-110" "0"
## [6,] "1.355377e-114" "2.567080" "0.989" "0.282" "4.545664e-110" "0"
## [7,] "5.912241e-114" "2.169436" "1.000" "0.295" "1.982847e-109" "0"
## [8,] "8.787250e-112" "2.700498" "1.000" "0.311" "2.947068e-107" "0"
## [9,] "2.518811e-111" "2.143144" "0.994" "0.262" "8.447589e-107" "0"
## [10,] "3.723965e-104" "2.103426" "1.000" "0.395" " 1.248943e-99" "0"
## [11,] " 5.390725e-81" "2.038185" "0.953" "0.331" " 1.807941e-76" "1"
## [12,] " 3.096750e-73" "1.818058" "0.935" "0.381" " 1.038588e-68" "1"
## [13,] " 2.787820e-66" "1.946037" "1.000" "0.759" " 9.349790e-62" "1"
## [14,] " 3.809341e-66" "1.423535" "0.923" "0.395" " 1.277577e-61" "1"
## [15,] " 3.939624e-62" "1.408315" "0.994" "0.745" " 1.321271e-57" "1"
## [16,] " 2.026466e-57" "1.497978" "0.905" "0.420" " 6.796361e-53" "1"
## [17,] " 6.328998e-57" "1.633480" "0.970" "0.755" " 2.122619e-52" "1"
## [18,] " 1.866497e-56" "1.511335" "0.988" "0.830" " 6.259857e-52" "1"
## [19,] " 4.110477e-53" "1.550033" "0.923" "0.597" " 1.378572e-48" "1"
## [20,] " 1.494263e-51" "1.516664" "0.982" "0.624" " 5.011461e-47" "1"
## [21,] " 7.497445e-78" "1.826130" "0.721" "0.121" " 2.514493e-73" "2"
## [22,] " 1.846264e-74" "2.391872" "0.994" "0.897" " 6.192000e-70" "2"
## [23,] " 5.179022e-72" "1.623937" "0.864" "0.240" " 1.736940e-67" "2"
## [24,] " 2.527806e-60" "1.413136" "0.974" "0.812" " 8.477756e-56" "2"
## [25,] " 5.903210e-60" "1.469367" "0.935" "0.507" " 1.979819e-55" "2"
## [26,] " 5.530687e-59" "1.790494" "1.000" "0.927" " 1.854882e-54" "2"
## [27,] " 3.788774e-57" "1.937084" "0.981" "0.700" " 1.270679e-52" "2"
## [28,] " 1.882958e-56" "1.495411" "1.000" "0.996" " 6.315065e-52" "2"
## [29,] " 2.766177e-51" "1.440902" "0.714" "0.177" " 9.277206e-47" "2"
## [30,] " 1.948553e-47" "1.448895" "0.948" "0.670" " 6.535057e-43" "2"
## [31,] "2.696909e-170" "1.536410" "0.930" "0.051" "9.044894e-166" "3"
## [32,] " 1.813295e-97" "1.715417" "0.937" "0.228" " 6.081429e-93" "3"
## [33,] " 8.325655e-88" "1.961581" "0.965" "0.282" " 2.792258e-83" "3"
## [34,] " 2.807664e-79" "1.836803" "0.986" "0.546" " 9.416344e-75" "3"
## [35,] " 4.265136e-76" "1.904044" "0.986" "0.601" " 1.430441e-71" "3"
## [36,] " 4.129375e-75" "1.849851" "0.993" "0.638" " 1.384910e-70" "3"
## [37,] " 9.078462e-75" "2.576137" "0.986" "0.773" " 3.044735e-70" "3"
## [38,] " 9.823225e-75" "2.063922" "0.986" "0.614" " 3.294513e-70" "3"
## [39,] " 6.953299e-73" "1.886080" "0.972" "0.537" " 2.331997e-68" "3"
## [40,] " 2.234984e-68" "2.417912" "0.986" "0.758" " 7.495690e-64" "3"
## [41,] " 1.167120e-54" "2.252501" "0.790" "0.206" " 3.914288e-50" "4"
## [42,] " 4.401099e-52" "1.387220" "0.975" "0.512" " 1.476040e-47" "4"
## [43,] " 2.148337e-45" "1.450118" "0.840" "0.307" " 7.205092e-41" "4"
## [44,] " 2.076797e-42" "2.257484" "0.933" "0.476" " 6.965162e-38" "4"
## [45,] " 1.702096e-41" "1.615830" "0.874" "0.416" " 5.708489e-37" "4"
## [46,] " 2.759173e-41" "1.452258" "0.916" "0.527" " 9.253714e-37" "4"
## [47,] " 1.176994e-39" "1.446625" "0.975" "0.628" " 3.947404e-35" "4"
## [48,] " 2.298906e-34" "1.633594" "1.000" "0.975" " 7.710072e-30" "4"
## [49,] " 2.241069e-21" "1.797888" "0.773" "0.444" " 7.516096e-17" "4"
## [50,] " 1.221268e-18" "1.444292" "0.672" "0.342" " 4.095887e-14" "4"
## [51,] " 7.918077e-48" "1.622165" "0.990" "0.431" " 2.655565e-43" "5"
## [52,] " 2.238636e-46" "1.696176" "1.000" "0.722" " 7.507939e-42" "5"
## [53,] " 2.860564e-43" "1.459257" "0.929" "0.404" " 9.593760e-39" "5"
## [54,] " 4.813143e-41" "1.435189" "0.848" "0.277" " 1.614232e-36" "5"
## [55,] " 3.354506e-40" "1.458001" "0.909" "0.391" " 1.125034e-35" "5"
## [56,] " 5.105091e-40" "1.447743" "1.000" "0.790" " 1.712145e-35" "5"
## [57,] " 1.080295e-23" "1.418654" "0.899" "0.719" " 3.623092e-19" "5"
## [58,] " 1.197681e-20" "1.753500" "1.000" "0.996" " 4.016783e-16" "5"
## [59,] " 1.312912e-11" "1.967047" "0.980" "0.955" " 4.403245e-07" "5"
## [60,] " 1.819123e-06" "1.646971" "0.545" "0.420" " 6.100973e-02" "5"
## [61,] " 1.947917e-52" "1.186712" "0.922" "0.288" " 6.532923e-48" "6"
## [62,] " 2.604675e-46" "1.484916" "0.956" "0.408" " 8.735558e-42" "6"
## [63,] " 5.102311e-43" "1.315888" "0.933" "0.437" " 1.711213e-38" "6"
## [64,] " 1.494108e-42" "1.580178" "0.833" "0.266" " 5.010940e-38" "6"
## [65,] " 1.421163e-39" "1.139706" "0.889" "0.391" " 4.766297e-35" "6"
## [66,] " 7.483431e-39" "1.488748" "0.800" "0.228" " 2.509793e-34" "6"
## [67,] " 3.977564e-38" "1.387418" "0.989" "0.712" " 1.333995e-33" "6"
## [68,] " 1.357131e-32" "1.878086" "1.000" "0.931" " 4.551547e-28" "6"
## [69,] " 1.628702e-28" "1.268166" "0.900" "0.584" " 5.462342e-24" "6"
## [70,] " 3.900800e-26" "1.294382" "0.956" "0.689" " 1.308250e-21" "6"
## [71,] " 8.572137e-90" "1.768726" "1.000" "0.130" " 2.874923e-85" "7"
## [72,] " 1.368958e-87" "2.042924" "0.985" "0.129" " 4.591212e-83" "7"
## [73,] " 5.452865e-87" "2.236550" "0.985" "0.129" " 1.828782e-82" "7"
## [74,] " 3.346281e-64" "1.856521" "0.985" "0.221" " 1.122276e-59" "7"
## [75,] " 6.084572e-58" "1.687365" "0.970" "0.235" " 2.040644e-53" "7"
## [76,] " 9.481351e-58" "2.451641" "1.000" "0.285" " 3.179856e-53" "7"
## [77,] " 4.857875e-55" "2.280891" "0.924" "0.205" " 1.629234e-50" "7"
## [78,] " 2.406805e-41" "1.880665" "1.000" "0.538" " 8.071942e-37" "7"
## [79,] " 4.244582e-41" "1.753201" "1.000" "0.505" " 1.423548e-36" "7"
## [80,] " 4.642748e-36" "1.927642" "1.000" "0.633" " 1.557085e-31" "7"
## [81,] " 1.119942e-30" "1.613989" "0.723" "0.184" " 3.756061e-26" "8"
## [82,] " 2.331677e-29" "1.476633" "0.985" "0.648" " 7.819977e-25" "8"
## [83,] " 3.164093e-29" "1.066209" "0.954" "0.427" " 1.061174e-24" "8"
## [84,] " 4.007181e-29" "1.297525" "0.985" "0.649" " 1.343928e-24" "8"
## [85,] " 1.213273e-28" "1.408490" "0.985" "0.666" " 4.069074e-24" "8"
## [86,] " 1.192655e-25" "1.062717" "1.000" "0.855" " 3.999926e-21" "8"
## [87,] " 3.896175e-25" "1.414331" "1.000" "0.788" " 1.306699e-20" "8"
## [88,] " 8.366594e-24" "1.160669" "1.000" "0.912" " 2.805988e-19" "8"
## [89,] " 2.247137e-22" "1.263117" "0.846" "0.299" " 7.536448e-18" "8"
## [90,] " 2.352472e-17" "1.046039" "0.954" "0.643" " 7.889721e-13" "8"
## [91,] " 1.735046e-63" "3.263369" "0.917" "0.118" " 5.818996e-59" "9"
## [92,] " 2.762613e-55" "2.569412" "0.979" "0.189" " 9.265251e-51" "9"
## [93,] " 6.419675e-44" "2.227550" "0.771" "0.120" " 2.153031e-39" "9"
## [94,] " 6.937651e-42" "2.623658" "0.958" "0.267" " 2.326749e-37" "9"
## [95,] " 2.289617e-38" "2.592318" "0.938" "0.279" " 7.678916e-34" "9"
## [96,] " 8.660222e-32" "3.175171" "1.000" "0.752" " 2.904465e-27" "9"
## [97,] " 6.690497e-26" "2.182278" "1.000" "0.664" " 2.243859e-21" "9"
## [98,] " 2.150475e-19" "2.240637" "0.875" "0.457" " 7.212262e-15" "9"
## [99,] " 3.674938e-19" "2.320411" "0.958" "0.618" " 1.232501e-14" "9"
## [100,] " 7.397930e-19" "2.200289" "0.958" "0.921" " 2.481118e-14" "9"
## [101,] "1.551403e-165" "2.860848" "1.000" "0.009" "5.203095e-161" "10"
## [102,] " 9.468058e-83" "3.255233" "1.000" "0.035" " 3.175397e-78" "10"
## [103,] " 1.487256e-55" "3.158075" "1.000" "0.063" " 4.987960e-51" "10"
## [104,] " 5.362388e-38" "3.206616" "1.000" "0.107" " 1.798438e-33" "10"
## [105,] " 1.073640e-34" "2.909807" "0.833" "0.074" " 3.600772e-30" "10"
## [106,] " 3.716395e-31" "2.749332" "0.667" "0.049" " 1.246404e-26" "10"
## [107,] " 3.859706e-17" "2.549649" "1.000" "0.351" " 1.294468e-12" "10"
## [108,] " 1.293738e-16" "2.597582" "1.000" "0.334" " 4.338939e-12" "10"
## [109,] " 1.510370e-14" "3.835891" "1.000" "0.520" " 5.065478e-10" "10"
## [110,] " 2.953189e-13" "2.547447" "1.000" "0.646" " 9.904404e-09" "10"
## [111,] "3.528310e-157" "2.182565" "0.923" "0.005" "1.183325e-152" "11"
## [112,] "1.124497e-149" "1.528145" "0.923" "0.006" "3.771338e-145" "11"
## [113,] "1.194096e-132" "2.276899" "0.846" "0.006" "4.004759e-128" "11"
## [114,] " 4.843226e-88" "1.969147" "1.000" "0.023" " 1.624321e-83" "11"
## [115,] " 6.342572e-46" "1.954123" "1.000" "0.056" " 2.127172e-41" "11"
## [116,] " 1.077809e-24" "1.833355" "1.000" "0.130" " 3.614755e-20" "11"
## [117,] " 1.717758e-15" "1.884843" "0.846" "0.127" " 5.761015e-11" "11"
## [118,] " 7.243264e-12" "1.603618" "1.000" "0.341" " 2.429246e-07" "11"
## [119,] " 5.239166e-11" "1.499413" "0.615" "0.104" " 1.757112e-06" "11"
## [120,] " 8.042425e-10" "1.536496" "0.923" "0.298" " 2.697268e-05" "11"
## gene
## [1,] "C1QC"
## [2,] "C1QA"
## [3,] "C1QB"
## [4,] "HLA-DRB1"
## [5,] "FCER1G"
## [6,] "CD14"
## [7,] "SRGN"
## [8,] "CD74"
## [9,] "HLA-DRA"
## [10,] "LAPTM5"
## [11,] "PMAIP1"
## [12,] "TNFAIP6"
## [13,] "LRP1B"
## [14,] "BIRC3"
## [15,] "NAV2"
## [16,] "PLK2"
## [17,] "TTC28"
## [18,] "ACSL3"
## [19,] "PPP1R15A"
## [20,] "EGFR"
## [21,] "HIST1H4E"
## [22,] "CNTNAP2"
## [23,] "HIST1H4H"
## [24,] "PCDH11X"
## [25,] "ADAMTSL1"
## [26,] "DLGAP1"
## [27,] "KCNQ5"
## [28,] "DMD"
## [29,] "IFNB1"
## [30,] "COPG2"
## [31,] "ELDR"
## [32,] "DTX3"
## [33,] "CADPS"
## [34,] "KIF5A"
## [35,] "AC084033.3"
## [36,] "CDK4"
## [37,] "MARS"
## [38,] "DCTN2"
## [39,] "TSPAN31"
## [40,] "DDIT3"
## [41,] "IGFBP3"
## [42,] "MSMO1"
## [43,] "HOPX"
## [44,] "CHI3L1"
## [45,] "ATP1B2"
## [46,] "GATM"
## [47,] "RCAN1"
## [48,] "PTPRZ1"
## [49,] "SERPINE1"
## [50,] "AGT"
## [51,] "PLXDC2"
## [52,] "LRMDA"
## [53,] "FMN1"
## [54,] "AC074327.1"
## [55,] "EPB41L3"
## [56,] "DOCK4"
## [57,] "DAPK1"
## [58,] "SCHLAP1"
## [59,] "ASCC2"
## [60,] "GFRA2"
## [61,] "NTNG1"
## [62,] "ID1"
## [63,] "GPC5"
## [64,] "FAM155A"
## [65,] "MGST1"
## [66,] "METTL7B"
## [67,] "CTNNA2"
## [68,] "SEC61G"
## [69,] "S100A16"
## [70,] "ANXA1"
## [71,] "BIRC5"
## [72,] "UBE2C"
## [73,] "TOP2A"
## [74,] "TPX2"
## [75,] "CENPF"
## [76,] "NUSAP1"
## [77,] "CCNB1"
## [78,] "PTTG1"
## [79,] "CKS2"
## [80,] "KPNA2"
## [81,] "CTGF"
## [82,] "ACAT2"
## [83,] "NTRK2"
## [84,] "FDFT1"
## [85,] "DGKB"
## [86,] "GAP43"
## [87,] "PTN"
## [88,] "TUBA1A"
## [89,] "GAL"
## [90,] "FABP7"
## [91,] "PLP1"
## [92,] "BCAS1"
## [93,] "TF"
## [94,] "SLAIN1"
## [95,] "CYB5R2"
## [96,] "AKAP6"
## [97,] "CRYAB"
## [98,] "CA2"
## [99,] "S100B"
## [100,] "GLUL"
## [101,] "COL3A1"
## [102,] "DCN"
## [103,] "NDUFA4L2"
## [104,] "COL1A2"
## [105,] "COL1A1"
## [106,] "STC1"
## [107,] "COL4A1"
## [108,] "FSTL1"
## [109,] "FN1"
## [110,] "SPARC"
## [111,] "CD2"
## [112,] "TRBC2"
## [113,] "GZMA"
## [114,] "CD52"
## [115,] "TRAC"
## [116,] "CD96"
## [117,] "CCL4"
## [118,] "PTPRC"
## [119,] "TC2N"
## [120,] "PCED1B"
Vizualize a priori chosen markers of tumour subtypes:
markers = list(c('DDIT3', 'ENO2', 'VIM', 'ADM', 'LDHA', 'HILPDA'), c('VIM', 'ANXA1', 'ANXA2', 'CHI3L1', 'CD44'), c('CST3', 'GFAP', 'S100B', 'HOPX', 'SLC1A3', 'MLC1'),
c('PLP1', 'ALCAM', 'OLIG1', 'OMG', 'PLLP'), c('SOX4', 'DCX', 'CD24', 'DLL3', 'SOX11'), c('RND3', 'SOX11', 'DCX', 'CD24', 'STMN4', 'STMN2', 'DLX5', 'DLX6-AS1'))
names(markers) = c('MES-like2', 'MES-like1', 'AC-like', 'OPC-like', 'NPC-like1', 'NPC-like2')
i = 1
Glioblastoma.list[[i]]$MESlike2 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[1]],])
Glioblastoma.list[[i]]$MESlike1 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[2]],])
Glioblastoma.list[[i]]$AClike = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[3]],])
Glioblastoma.list[[i]]$OPClike = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[4]],])
Glioblastoma.list[[i]]$NPClike1 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[5]],])
Glioblastoma.list[[i]]$NPClike2 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[6]],])
FeaturePlot(Glioblastoma.list[[i]], features = c('MESlike2', 'MESlike1', 'AClike', 'OPClike', 'NPClike1', 'NPClike2'))
i = 2
Glioblastoma.list[[i]]$MESlike2 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[1]],])
Glioblastoma.list[[i]]$MESlike1 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[2]],])
Glioblastoma.list[[i]]$AClike = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[3]],])
Glioblastoma.list[[i]]$OPClike = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[4]],])
Glioblastoma.list[[i]]$NPClike1 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[5]],])
Glioblastoma.list[[i]]$NPClike2 = colSums(Glioblastoma.list[[i]]@assays$RNA@data[markers[[6]],])
FeaturePlot(Glioblastoma.list[[i]], features = c('MESlike2', 'MESlike1', 'AClike', 'OPClike', 'NPClike1', 'NPClike2'))
Vizualize donor:
i = 1
DimPlot(Glioblastoma.list[[i]], reduction = "umap", group.by = 'Patient')
i = 2
DimPlot(Glioblastoma.list[[i]], reduction = "umap", group.by = 'Patient')
Vizualize cells with response to virus, based on sum of DDIT3 and IFNB1 expression:
viral_response = c('DDIT3', 'IFNB1')
i = 1
Glioblastoma.list[[i]]$viral_response = colSums(Glioblastoma.list[[i]]@assays$RNA@data[viral_response,])
FeaturePlot(Glioblastoma.list[[i]], features = 'viral_response')
i = 2
Glioblastoma.list[[i]]$viral_response = colSums(Glioblastoma.list[[i]]@assays$RNA@data[viral_response,])
FeaturePlot(Glioblastoma.list[[i]], features = 'viral_response')